"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    var desc = Object.getOwnPropertyDescriptor(m, k);
    if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
      desc = { enumerable: true, get: function() { return m[k]; } };
    }
    Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
    for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.EventParserMap = exports.QQEvent = void 0;
const message_1 = require("./message");
const notice_1 = require("../event/notice");
__exportStar(require("./message"), exports);
var QQEvent;
(function (QQEvent) {
    QQEvent["DIRECT_MESSAGE_CREATE"] = "message.private.direct";
    QQEvent["AT_MESSAGE_CREATE"] = "message.guild";
    QQEvent["MESSAGE_CREATE"] = "message.guild";
    QQEvent["MESSAGE_REACTION_ADD"] = "notice.reaction.add";
    QQEvent["MESSAGE_REACTION_REMOVE"] = "notice.reaction.remove";
    QQEvent["GUILD_CREATE"] = "notice.guild.increase";
    QQEvent["GUILD_UPDATE"] = "notice.guild.update";
    QQEvent["GUILD_DELETE"] = "notice.guild.decrease";
    QQEvent["CHANNEL_CREATE"] = "notice.channel.increase";
    QQEvent["CHANNEL_UPDATE"] = "notice.channel.update";
    QQEvent["CHANNEL_DELETE"] = "notice.channel.decrease";
    QQEvent["AUDIO_OR_LIVE_CHANNEL_MEMBER_ENTER"] = "notice.channel.enter";
    QQEvent["AUDIO_OR_LIVE_CHANNEL_MEMBER_EXIT"] = "notice.channel.exit";
    QQEvent["GUILD_MEMBER_ADD"] = "notice.guild.member.increase";
    QQEvent["GUILD_MEMBER_UPDATE"] = "notice.guild.member.update";
    QQEvent["GUILD_MEMBER_REMOVE"] = "notice.guild.member.decrease";
    QQEvent["GROUP_ADD_ROBOT"] = "notice.group.increase";
    QQEvent["GROUP_DEL_ROBOT"] = "notice.group.decrease";
    QQEvent["GROUP_MSG_REJECT"] = "notice.group.receive_close";
    QQEvent["GROUP_MSG_RECEIVE"] = "notice.group.receive_open";
    QQEvent["FRIEND_ADD"] = "notice.friend.increase";
    QQEvent["FRIEND_DEL"] = "notice.friend.decrease";
    QQEvent["C2C_MSG_REJECT"] = "notice.friend.receive_close";
    QQEvent["C2C_MSG_RECEIVE"] = "notice.friend.receive_open";
    QQEvent["INTERACTION_CREATE"] = "notice";
    QQEvent["MESSAGE_AUDIT_PASS"] = "message.audit.pass";
    QQEvent["MESSAGE_AUDIT_REJECT"] = "message.audit.reject";
    QQEvent["C2C_MESSAGE_CREATE"] = "message.private.friend";
    QQEvent["GROUP_AT_MESSAGE_CREATE"] = "message.group";
    QQEvent["FORUM_THREAD_CREATE"] = "notice.forum.thread.create";
    QQEvent["FORUM_THREAD_UPDATE"] = "notice.forum.thread.update";
    QQEvent["FORUM_THREAD_DELETE"] = "notice.forum.thread.delete";
    QQEvent["FORUM_POST_CREATE"] = "notice.forum.post.create";
    QQEvent["FORUM_POST_DELETE"] = "notice.forum.post.delete";
    QQEvent["FORUM_REPLY_CREATE"] = "notice.forum.reply.create";
    QQEvent["FORUM_REPLY_DELETE"] = "notice.forum.reply.delete";
    QQEvent["FORUM_PUBLISH_AUDIT_RESULT"] = "notice.forum.audit";
    QQEvent["OPEN_FORUM_THREAD_CREATE"] = "notice.forum";
    QQEvent["OPEN_FORUM_THREAD_UPDATE"] = "notice.forum";
    QQEvent["OPEN_FORUM_THREAD_DELETE"] = "notice.forum";
    QQEvent["OPEN_FORUM_POST_CREATE"] = "notice.forum";
    QQEvent["OPEN_FORUM_POST_DELETE"] = "notice.forum";
    QQEvent["OPEN_FORUM_REPLY_CREATE"] = "notice.forum";
    QQEvent["OPEN_FORUM_REPLY_DELETE"] = "notice.forum";
})(QQEvent || (exports.QQEvent = QQEvent = {}));
exports.EventParserMap = new Map();
exports.EventParserMap.set(QQEvent.MESSAGE_AUDIT_PASS, message_1.MessageAuditEvent.parse);
exports.EventParserMap.set(QQEvent.MESSAGE_AUDIT_REJECT, message_1.MessageAuditEvent.parse);
exports.EventParserMap.set(QQEvent.AT_MESSAGE_CREATE, message_1.MessageEvent.parse);
exports.EventParserMap.set(QQEvent.DIRECT_MESSAGE_CREATE, message_1.MessageEvent.parse);
exports.EventParserMap.set(QQEvent.MESSAGE_CREATE, message_1.MessageEvent.parse);
exports.EventParserMap.set(QQEvent.GROUP_AT_MESSAGE_CREATE, message_1.MessageEvent.parse);
exports.EventParserMap.set(QQEvent.C2C_MESSAGE_CREATE, message_1.MessageEvent.parse);
exports.EventParserMap.set(QQEvent.INTERACTION_CREATE, notice_1.ActionNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.FRIEND_ADD, notice_1.FriendChangeNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.FRIEND_DEL, notice_1.FriendChangeNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.C2C_MSG_REJECT, notice_1.FriendReceiveNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.C2C_MSG_RECEIVE, notice_1.FriendReceiveNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.GROUP_ADD_ROBOT, notice_1.GroupChangeNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.GROUP_DEL_ROBOT, notice_1.GroupChangeNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.GROUP_MSG_RECEIVE, notice_1.GroupReceiveNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.GROUP_MSG_REJECT, notice_1.GroupReceiveNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.GUILD_CREATE, notice_1.GuildChangeNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.GUILD_UPDATE, notice_1.GuildChangeNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.GUILD_DELETE, notice_1.GuildChangeNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.CHANNEL_CREATE, notice_1.ChannelChangeNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.CHANNEL_UPDATE, notice_1.ChannelChangeNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.CHANNEL_DELETE, notice_1.ChannelChangeNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.AUDIO_OR_LIVE_CHANNEL_MEMBER_ENTER, notice_1.ChannelChangeNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.AUDIO_OR_LIVE_CHANNEL_MEMBER_EXIT, notice_1.ChannelChangeNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.GUILD_MEMBER_ADD, notice_1.GuildMemberChangeNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.GUILD_MEMBER_UPDATE, notice_1.GuildMemberChangeNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.GUILD_MEMBER_REMOVE, notice_1.GuildMemberChangeNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.FORUM_THREAD_CREATE, notice_1.ForumNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.FORUM_THREAD_UPDATE, notice_1.ForumNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.FORUM_THREAD_DELETE, notice_1.ForumNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.FORUM_POST_CREATE, notice_1.ForumNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.FORUM_POST_DELETE, notice_1.ForumNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.FORUM_REPLY_CREATE, notice_1.ForumNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.FORUM_REPLY_DELETE, notice_1.ForumNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.FORUM_PUBLISH_AUDIT_RESULT, notice_1.ForumNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.OPEN_FORUM_THREAD_CREATE, notice_1.ForumNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.OPEN_FORUM_THREAD_UPDATE, notice_1.ForumNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.OPEN_FORUM_THREAD_DELETE, notice_1.ForumNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.OPEN_FORUM_POST_CREATE, notice_1.ForumNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.OPEN_FORUM_POST_DELETE, notice_1.ForumNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.OPEN_FORUM_REPLY_CREATE, notice_1.ForumNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.OPEN_FORUM_REPLY_DELETE, notice_1.ForumNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.MESSAGE_REACTION_ADD, notice_1.MessageReactionNoticeEvent.parse);
exports.EventParserMap.set(QQEvent.MESSAGE_REACTION_REMOVE, notice_1.MessageReactionNoticeEvent.parse);
